home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 1998 August / PC Plus SuperCD 50a Issue 142 (CD142a) (August 1998).iso / trial / demon / TURNPIKE.1 / CLASSES.ZIP / sun / NET / ProgressData.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-04-14  |  1.4 KB  |  78 lines

  1. package sun.net;
  2.  
  3. import java.net.URL;
  4. import java.util.Observable;
  5.  
  6. public class ProgressData extends Observable {
  7.    public static ProgressData pdata = new ProgressData();
  8.    public static final int NEW = 0;
  9.    public static final int CONNECTED = 1;
  10.    public static final int UPDATE = 2;
  11.    public static final int DELETE = 3;
  12.    public int lastchanged;
  13.    public int what;
  14.    public ProgressEntry[] streams = new ProgressEntry[20];
  15.  
  16.    public synchronized void register(URL var1) {
  17.       for(int var3 = 0; var3 < this.streams.length; ++var3) {
  18.          if (this.streams[var3] == null) {
  19.             ProgressEntry var2 = new ProgressEntry(var1, var1.getFile(), (String)null);
  20.             this.streams[var3] = var2;
  21.             this.lastchanged = var3;
  22.             this.what = 0;
  23.             ((Observable)this).setChanged();
  24.             ((Observable)this).notifyObservers();
  25.             return;
  26.          }
  27.       }
  28.  
  29.    }
  30.  
  31.    public synchronized void connected(URL var1) {
  32.    }
  33.  
  34.    public synchronized void unregister(URL var1) {
  35.       this.what = 3;
  36.  
  37.       for(int var2 = 0; var2 < this.streams.length; ++var2) {
  38.          if (this.streams[var2] != null && this.streams[var2].key == var1) {
  39.             this.streams[var2] = null;
  40.             this.lastchanged = var2;
  41.             ((Observable)this).setChanged();
  42.             ((Observable)this).notifyObservers();
  43.             return;
  44.          }
  45.       }
  46.  
  47.    }
  48.  
  49.    public synchronized void update(URL var1, int var2, int var3) {
  50.       this.what = 2;
  51.  
  52.       for(int var4 = 0; var4 < this.streams.length; ++var4) {
  53.          if (this.streams[var4] != null && this.streams[var4].key == var1) {
  54.             ProgressEntry var5 = this.streams[var4];
  55.             var5.update(var2, var3);
  56.             if (!var5.connected()) {
  57.                var5.setType(var1.getFile(), (String)null);
  58.                this.lastchanged = var4;
  59.                this.what = 1;
  60.                ((Observable)this).setChanged();
  61.                ((Observable)this).notifyObservers();
  62.             }
  63.  
  64.             this.lastchanged = var4;
  65.             ((Observable)this).setChanged();
  66.             if (var5.read >= var5.need && var5.read != 0) {
  67.                this.streams[var4] = null;
  68.                this.what = 3;
  69.             }
  70.  
  71.             ((Observable)this).notifyObservers();
  72.             return;
  73.          }
  74.       }
  75.  
  76.    }
  77. }
  78.